#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Date    : 2018-05-22 17:43:33
# @Author  : Chen Jing (cjvaely@foxmail.com)
# @Link    : https://github.com/Cjvaely
# @Version : $Id$

# 切片操作符Slice
# >>> L = ['Michael', 'Sarah', 'Tracy', 'Bob', 'Jack']
# 取前3个元素，用一行代码就可以完成切片：
# >>> L[0:3]
# ['Michael', 'Sarah', 'Tracy']
# 从索引0开始取，直到索引3为止，但不包括索引3
#
# 类似的，既然Python支持L[-1]取倒数第一个元素，那么它同样支持倒数切片，试试：
# >>> L[-2:]
# ['Bob', 'Jack']
# >>> L[-2:-1]
# ['Bob']
# 记住倒数第一个元素的索引是-1
#
# 前10个数，每两个取一个：

# >>> L = list(range(100))
# >>> L
# [0, 1, 2, 3, ..., 99]
#
# >>> L[:10:2]
# [0, 2, 4, 6, 8]
# 所有数，每5个取一个：
# >>> L[::5]
# [0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 90, 95]
#
# 甚至什么都不写，只写[:]就可以原样复制一个list：
# >>> L[:]
# [0, 1, 2, 3, ..., 99]

# tuple也是一种list，唯一区别是tuple不可变。因此，tuple也可以用切片操作，只是操作的结果仍是tuple：
# 
# >>> (0, 1, 2, 3, 4, 5)[:3]
# (0, 1, 2)